package me.shibor.study.servlet;

import java.io.IOException;

import javax.servlet.Servlet;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;


/**
 * 生命周期：
 *  void init(ServletConfig config) 默认情况下：第一次访问下创建Servlet（可修改），然后 调用init()
 *  void service(ServletRequest req, ServletResponse res)
 *  void destroy() 
 *
 */
public class ServletDemo1 implements Servlet{

	/**
	 * 执行时机：Servlet的实例被销毁的时候被调用
	 * 做收尾的工作
	 */
	@Override
	public void destroy() {
		System.out.println("serlvet 销毁");
	}
	/**
	 * 获得ServletConfig的配置对象
	 */
	@Override
	public ServletConfig getServletConfig() {
		
		return null;
	}

	@Override
	public String getServletInfo() {
		
		return null;
	}

	/**
	 * 执行时机：当Servlet被创建出来的时候被调用，做初始化工作
	 * ServletConfig：Servlet的配置对象
	 */
	@Override
	public void init(ServletConfig arg0) throws ServletException {
		
		System.out.println("ServletDemo1组件被创建！");
	}

	/**
	 * 执行时机：当一个请求 请求当前的Servlet的时候被调用
	 * 处理当前的Servlet的业务逻辑并且返回给浏览器
	 */
	@Override
	public void service(ServletRequest request, ServletResponse response) throws ServletException, IOException {
		
		System.out.println("响应请求");
		//response.getOutputStream().write("<font color='red'> helloServlet</font>".getBytes());
		response.getWriter().print("<font color='red'> helloServlet</font>");
		
	}

}
